#ifndef _QUEUE_H_
#define _QUEUE_H_

typedef struct Node
{
    void* data;
    struct Node* next;
}Node;

typedef struct Queue
{
    Node* head;
    Node* tail;
    int size;
}Queue;

/* 队列初始化 */
int QueueInit(Queue** queue);
/* 入队 */
int QueuePush(Queue* queue, void* val);
/* 队空 */
int QueueEmpty(Queue* queue);
/* 出队 */
void* QueuePop(Queue* queue);
/* 销毁队列 */
int QueueDestroy(Queue* queue);
#endif